import { Rule } from 'antd/es/form';
import { DateTime } from 'luxon'; 
import { useIntl } from "umi";

 export interface PageParams  {
    page: number ;
    pageSize: number ;
  }



// 特殊规则字典VO
export interface LgExtrasDictVO {
    // 主键ID（由业务系统指定）
    id: string;
    // 规则名称（如："节假日特殊规则"）
    lgExtrasName: string;
    // 规则代码，唯一标识（如："HOLIDAY_RULE"）
    lgExtrasCode: string;
    // 服务商（如："支付宝"、"微信支付"等）
    serviceProvider: string;
    // 规则描述（详细说明规则内容）
    extrasDescription: string;
    // 创建时间
    createTime: string; // 或者使用 Date 类型，取决于前端如何处理日期
    // 最后更新时间
    updateTime: string; // 或者使用 Date 类型，取决于前端如何处理日期
    // 创建者，目前使用 SysUser 的 id 编号
    // 使用 String 类型的原因是，未来可能会存在非数值的情况，留好拓展性。
    creator: string;
    // 更新者，目前使用 SysUser 的 id 编号
    // 使用 String 类型的原因是，未来可能会存在非数值的情况，留好拓展性。
    updater: string;
}

/**
 * 价格规则 VO (Value Object)
 */
export interface PriceRuleVO {
  /**   * 主键ID   */
  id: string; // 可选，因为可能是新建操作
  /**   * 规则名称（如："VIP会员9折"）   */
  ruleName: string;
  /**   * 规则代码，唯一标识（如："VIP_9DISCOUNT"）   */
  ruleCode: string;
  /**   * 规则类型（0-通用基础收费项，1-特殊杂费项）
   * 枚举：0=通用基础收费项, 1=特殊杂费项   */
  ruleType: 0 | 1; // 使用联合类型限制为 0 或 1
  /**   * 特殊规则代码（当rule_type=1时，关联special_rule_dictionary表的rule_code）   */
  feeItemCode?: string; // 可选，因为 ruleType=0 时可能不需要
  /**   * 计算规则（如："固定价"、"附加率"、"固定上浮"等）   * 枚举：具体值取决于后端定义   */
  calculationRule: string;
  /**
   * 规则值（如：0.1表示原价1.1倍，100.00表示固定价）   */
  ruleValue: number; // 使用 number 类型表示 BigDecimal

  /** 当规则类型分段等其他类型时，需要填充该值**/
  ruleExtendValue?:string;
  /** 描述 */
  description?:string;
  /**   * 状态（0-停用，1-启用）   */
  status?: 0 | 1; // 可选，因为可能是新建操作
}